/* value,当前的字段的值
 *row, 这一行
 index 索引
 */
function imageMatter(value, row, index) {
    return "<img src = '" + value + "' />";

}

/* 通过data-method拿到所有的方法 */
$(function () {
//	抽取一些公共的常用组件
    var producttypeGrid = $("#producttypeGrid");
//	添加或者删除的组件
    var editDlg = $("#editDlg");
    var addForm = $("#addForm");
//	修改的组件
    var editDlg2 = $("#editDlg2");
    var addForm2 = $("#addForm2");
    /* 做一个模糊调用 */
    $("*[data-method]").on("click", function () {
        zh[$(this).data("method")]();
    })
    zh = {
        add() {
//			editDlg 添加的框
            editDlg.dialog("open");
//			不要隐藏所有的密码框
            $("*[date-save]").show();
//			需要去对密码元素禁用
            $("*[date-save] input").validatebox('enable');
//			再次打开框的时候，需要清空里面的内容
            addForm.form("clear");
        },
        edit() {
//			选中一行，如果没有选中，就不改
            var row = producttypeGrid.datagrid("getSelected");
            if (row) {
                /**
                 * 1.回显所有的内容（
                 * 1.1跟添加共用一个框editDlg===有比较多的内容要处理
                 * 问题一：有一些不需要验证的，怎么处理 问题二：数据可能会丢
                 * 1.2直接自己去再写一个框=== 也有问题
                 * 问题一：页面多，不好看，重复代码比较冗余,也要处理名字重复的问题
                 * 问题二：提交的过程也会冗余
                 */
//				editDlg 添加的框
                editDlg.dialog("open");
//				再次打开框的时候，需要清空里面的内容
                addForm.form("clear");
//				回显操作
                addForm.form('load', row);
            } else {
                $.messager.alert('提示', '你没有选中，不能进行修改操作', "info");
            }
        },
        remove() {
//			1.选中一行 getSelected
            var row = producttypeGrid.datagrid("getSelected");
            console.log(row);
//			2.确认选没选，如果选了，就坐下面的确认删除的操作
            if (row) {
                $.messager.confirm('确认', '您确认删除吗？', function (r) {
                    if (r) {  //				       	确认被删除，去后台做删除操作  发送一个请求
                        $.get("../productType/deleteByKey", {id: row.id}, function (result) {
                            //console.log(result);  {success: true, msg: "已经删掉了"}
                            if (result.success) {
//				    			已经删除了，就把页面重新刷新一下
                                producttypeGrid.datagrid("reload");
                            } else {
                                console.log(result.msg);
                                $.messager.alert('提示', '无法删除', "error");
                            }

                        })
                    }

                });
            } else {
//				没有选内容，不要去做删除
                $.messager.alert('提示', '你没有选中，不能删除操作', "info");
            }
        },
        search() {
            /*1.获取到用户输入的信息 */


            var id = $("input[name=id]").val();
            var name = $("input[name=name]").val();
            var descs = $("input[name=descs]").val();
            var params = {name, id, descs};
            console.log(params);

            /*2.加载运行*/
            producttypeGrid.datagrid("load", params);
        },
        save() {
            var url = '../productType/save';
//			如果可以获取到前台的id,那么就换成修改的操作
            var producttypeId = $("#producttypeId").val();
            alert(producttypeId);
            if (producttypeId) {
                url = '../productType/update';
            }
//			真的添加操作  使用表单去做一个提交的内容
            $('#addForm').form('submit', {
                url: url,
                onSubmit: function () {
                    // do some check    做一些验证的操作，返回一个验证结果，
                    // return false to prevent submit;  如果有验证返回的false,就不执行
                    return $(this).form("validate");  //这里有一个验证是没有通过的,那么就不让你过
//			    	return true;
                },
                success: function (data) {
//			    	{"success":true,"msg":"添加成功"}  转成json格式
                    console.log(data);
                    var result = JSON.parse(data);
                    if (result.success) {
                        editDlg.dialog("close");
                        producttypeGrid.datagrid("reload");
                    } else {
                        $.messager.alert('提示', '没有添加成功', "error");
                    }
                }
            });
        }


    }

})
